Method and apparatus for establishing the layout of a building

ABSTRACT

An apparatus for establishing a layout of a building. The apparatus includes a mechanism for scanning a first room of the building to obtain room data. The apparatus also includes a scanner for forming a representation of a layout of the first room from the first room data. The forming mechanism is connected to the scanner. A method for establishing the layout of a building. The method includes the steps of placing a scanner in a first room of the building. Then there is the step of scanning the first room with the scanner to obtain first room data. Then there is the step of forming a representation of the layout of the first room from the first room data.

This application is a continuation of application Ser. No. 09/012,937filed on Jan. 24, 1998, now U.S. Pat. No. 6,446,030.

FIELD OF THE INVENTION

The present invention is related to establishing the layout of abuilding. More specifically, the present invention is related toestablishing the layout of the building with a laser rangefinder.

BACKGROUND OF THE INVENTION

The ability to measure as-built residential, commercial, and industrialstructures is becoming increasingly important for real estate marketingand remodeling. The current state of the art in this field is manualmeasurement and sketching which is not cost effective enough to meet thedemands of these applications. The present invention will overcome theseproblems and provides a system that will meet the existing demand forfast, low cost floor plan measurement.

SUMMARY OF THE INVENTION

The present invention pertains to an apparatus for establishing a layoutof a building. The apparatus comprises a mechanism for scanning a firstroom of the building to obtain room data. The apparatus also comprises amechanism for forming a representation of a layout of the first roomfrom the first room data. The forming mechanism is connected to thescanner.

The present invention pertains to a method for establishing the layoutof a building. The method comprises the steps of placing a scanner in afirst room of the building. Then there is the step of scanning the firstroom with the scanner to obtain first room data. Then there is the stepof forming a representation of the layout of the first room from thefirst room data.

The present invention pertains to a floor plan mapping apparatus whichis comprised of a scanning laser range sensor, a portable computer, anda WindowsXX based user interface. The apparatus has the capability ofquickly generating accurate floor plans of existing residential,commercial, and industrial structures.

The laser scanner extracts 3D information from the walls of each room inwhich it is placed. The 3D information is returned as a set of datapoints. The point set is processed by a set of algorithms which willconvert the data points into line segments represented in an industrystandard data format (such as DXF). The operator uses an interactiveinterface to add standard architectural details which cannot bereasonably represented by the laser range data. This includes bathroomfixtures, window details, appliances, and others. The result is furtherprocessed to generate a professional looking line drawing with notationswhich can be printed, inserted as an image in other documentation, orplaced directly on a Web Site.

BRIEF DESCRIPTION OF THE DRAWINGS

In the accompanying drawings, the preferred embodiment of the inventionand preferred methods of practicing the invention are illustrated inwhich:

FIG. 1 is a schematic representation of an apparatus of the presentinvention.

FIG. 2 is a layout of a building.

FIG. 3 is a representation of a layout of a first room and a second roomwith respect to the present invention.

FIG. 4 is a flow chart of the method of the present invention.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring now to the drawings wherein like reference numerals refer tosimilar or identical parts throughout the several views, and morespecifically to FIGS. 1 and 2 thereof, there is shown an apparatus 10for establishing a layout 11 of a building 12. The apparatus 10comprises a scanner 14 for scanning a first room 16 of the building 12to obtain room data. The apparatus 10 also comprises a mechanism 18 forforming a representation of a layout 15 of the first room 16 from thefirst room data, as shown in FIG. 3. The forming mechanism 18 isconnected to the scanner 14.

The scanner 14 preferably includes a laser rangefinder 20 which obtainspoint data 22 for the room data from the first room 16. Preferably, theforming mechanism 18 includes a memory 24 which stores the room data.The memory 24 is connected to the laser rangefinder 20. The formingmechanism preferably forms a representation of the layout 15 of thefirst room 16 with an entrance 36 of the first room 16 from the firstroom data. Preferably, the forming mechanism 18 includes a computer 26connected to the memory 24. The memory 24 preferably has a mechanism 28for forming line segments 32 from the point data 22 of the first roomdata. The line segment forming mechanism 28 is connected to the computer26. Preferably, the forming mechanism 18 includes a screen 30 connectedto the computer 26 which shows the line segments 32 which represent thelayout 15 of the first room 16.

Preferably, the memory 24 includes a mechanism 34 for identifying anentrance 36 from the point data 22. The entrance identifying mechanism34 is connected to the computer 26. The entrance 36 can be a door 38 orwindow 40.

Preferably, the entrance identifying mechanism 34 includes a mechanism27 for placing a door 38 or window 40 at an entrance 36 within the linesegments 32 as part of the room data. The door or window placingmechanism 27 is connected to the computer 26. The memory 24 preferablyincludes a mechanism 42 for identifying dimensions of the first room 16from the room data. The dimension identifying mechanism 42 is connectedto the computer 26. The memory 24 preferably includes a mechanism 44 forplacing a feature 54 into the line segments 32 of the room data. Thefeature placing mechanism 44 is connected to the computer 26.Preferably, the memory 24 includes a mechanism 46 for displaying a menu48 having symbols 50 of features 54, a door 38 and a window 40 on thescreen 30. The symbols 50 are able to be chosen from the menu 48 andplaced in the line segments 32 on the screen 30 of the room data. Thedisplaying mechanism 46 is connected to the computer 26. Preferably, thememory 24 includes a mechanism 52 for editing the line segments 32 ofthe room data. The editing mechanism 52 is connected to the computer 26.

The present invention pertains to a method for establishing the layout11 of a building 12, as shown in FIG. 4. The method comprises the stepsof placing a scanner 14 in a first room 16 of the building 12. Thenthere is the step of scanning the first room 16 with the scanner 14 toobtain first room data. Then there is the step of forming arepresentation of the layout of the first room 15 from the first room 16data.

Preferably, after the first room 16 scanning step, there is the step ofidentifying an entrance 36 to the first room 16 from the first roomdata. The forming step preferably includes the step of forming arepresentation of the layout of the first room 15 with the entrance 36of the first room 16. There is preferably the step of identifyingdimensions of the first room 16 associated with length and width.Preferably, after the first room 16 scanning step, there are the stepsof removing the scanner 14 from the first room 16. Then there is thestep of placing the scanner 14 in a second room 17 adjacent the firstroom 16. Next there is the step of scanning the second room 17 with thescanner 14 to obtain second room 17 data. Then there is the step ofcombining the second room 17 data with the first room 16 data. Nextthere is the step of forming a representation of a layout of the firstroom 15 with the entrance 36 and the second room 17 from the first room16 data and the second room 17 data. The step of combining preferablyincludes the step of aligning a representation of a common wall 56 ofthe first room 16 data and the second room 17 data.

Preferably, the identifying the entrance 36 step includes the step ofidentifying a door 38 in the first room 16. Preferably, the identifyingthe door 38 step includes the step of adding a representation of thedoor 38 to the first room 16 data. After the identifying the door 38step, there is preferably the step of identifying a window 40 in thefirst room 16. Preferably, the identifying the window 40 step includesthe step of adding a representation of the window 40 to the first room16 data. After the identifying the door 38 step, there is preferably thestep of adding a representation of a feature 54 to the first room 16data. The forming step preferably includes the step of forming therepresentation of the layout of the first room 15 with the door 38,window 40, feature 54 and floor covering from the first room 16 data andthe second room 17 from the second room 17 data. Preferably, the step ofadding a feature 54 includes the step of adding a representation of afireplace, appliance, toilet, tub, sink, cabinet or shower to the firstroom 16 data.

Preferably, after the step of adding a representation of a feature 54,there is the step of adding a representation of a floor covering to thefirst room 16 data. The step of adding a representation of floorcovering preferably includes the step of adding a representation ofhardwood, wall-to-wall carpet, vinyl or ceramic to the first room 16data.

Preferably, the scanning step includes the step of emitting a laser beamrepeatedly around the first room 16 and obtaining point data 22 fromreflections of the laser beam from the first room 16 to obtain firstroom 16 data. After the emitting step, there is preferably the step ofconnecting the point data 22 to form line segments 32 that represent thelayout of the first room 15. After the connecting step, there ispreferably the step of eliminating erroneous line segments 58.

Preferably, the identifying a door 38 step includes the step of placinga representation of a door 38 between associated door line segments 60that are a predetermined distance apart. The identifying a window 40step preferably includes the step of placing a representation of awindow 40 between associated window line segments 62. The step ofplacing a representation of a door 38 preferably includes the step ofviewing the line segments 32 on a screen 30 and picking a symbol of adoor 38 from a window 40 menu 48 on the screen 30 and dragging thesymbol of the door 38 from the window 40 menu 48 to between theassociated door line segments 60.

In the operation of the preferred embodiment, the generation of floorplan information from a set of scan points involves a deliberatereduction of the scale of data representing a room. In the domain of thescan head, the room will be represented by a set of range and azimuthpoints, each representing a measurement point in space. At a largerscale of abstraction, the room will be represented as a set of walls,doors 38, windows 40, and other suitable architectural features 54.

Through a structured set of data analysis techniques, each identifyingmore abstract features 54, it will be possible to generate a floor planfrom the raw scan data.

Most of the point data 22 will result in lines which delineate thelocation of walls. It will be important to automate as much of thisprocess as possible. Floor plan mapping will only be successful if mostof the work is automated.

The scanner 14 will return room scan data in the form of a rangemeasurement and an azimuth angle. This data will be sorted in increasingazimuth order (to resolve any overlap of scan data resulting frommechanical overscan).

The resulting list of scan points will then be subjected to a set oftransformations to identify relevant scan points outlining theboundaries of the room, and represent these boundaries in terms of a setof lines.

The initial set of scan data will be segmented into large sections forconvenience in processing. Beginning at the lowest azimuth, the scandata will be grouped into associated scan segments. The grouping will bebased upon comparing the distance of neighboring points to a suitablegranularity measurement.

This will serve to conveniently divide the data set at large breaks inthe room walls, such as at open doors 38 and windows 40 not covered bycurtains. It also affords a convenient way to eliminate a large numberof outlier data points returned from objects outside windows 40 and downhallways, etc.

The next stage of processing will recursively split the data segmentsinto smaller portions until lines fitted to the data composing eachsegment fall within specified deviation criteria. The deviation criteriais given in terms of a maximum perpendicular distance from a test linethat a point is allowed to be for the test line to be considered a goodfit to the data.

The first step in this recursive algorithm will be to obtain ameasurement of maximum deviation of a point set. This will be calculatedby finding the point in the data segment having the maximumperpendicular distance from line drawn between the first and last pointsof the data segment. If this maximum distance is less than the specifieddeviation measurement, no further segmentation will be performed on thatparticular scan data segment.

If the maximum deviation is greater than the specified deviationmeasurement, then the data segment will be divided into two smallersegments with the division placed at the point of maximum deviation. Thesame segmentation test will then be performed on each of the two newdata segments.

This algorithm will recurse down into the scan data set and identifycandidate data segments for line fits. This will occur until each datasegment satisfies the specified deviation measurement. The result willbe a linked list of scan data sections, suitable for use in fitting linesegments 32.

This section of the algorithm is based in part upon published work by D.G. Lowe of the University of British Columbia, Vancouver, Canada,incorporated by reference herein.

The segmented data will then be used to generate a set of linesrepresenting flat surfaces in the scan image. These lines will be usedas candidate surfaces for identification of walls, doors 38, and otherfeatures 54.

The method to be used is an eigenvector fit, which will assure a veryaccurate fit of a line to the data. The eigenvector fit will minimizethe perpendicular distances between the points in the data segment andthe line being fit to them.

The eigenvector fit will utilize a scatter matrix, formed by using anormalized set of range points, as described by:

$\overset{\_}{S} = {\sum\limits_{i = 1}^{n}{{\overset{\_}{v}}_{i}{\overset{\_}{v}}_{i}^{t}}}$

Where the normalized vectors are formed by subtracting the mean of theset of all points in the line segment from each individual point:{overscore (v)} _(i) ={overscore (p)} _(i) −{overscore (M)}

The best line to fit to the data set is characterized by the unit normalvector N that best minimizes the following equation:d ²({overscore (N)})={overscore (N)} ^(t) {overscore (SN)}

The normal N may be found by taking N to be the eigenvector associatedwith the smallest eigenvalue. The eigenvalues may be solved for by thefollowing:|{overscore (S)}−λĪ|=0

The eigenvector x for a given eigenvalue is given by:|{overscore (S)}−λĪ|{overscore (x)}=0

Since distinct eigenvectors of symmetric matrices are orthogonal, thebest fit line is parallel to the eigenvector associated with the largesteigenvalue.

Once the appropriate eigenvector is determined, the end-points of thedata segment for which the eigenvector has been generated are reflectedonto the line described by the eigenvector. This results in a linesegment oriented parallel to the eigenvector found above, terminated inthe physical model of the room at the beginning and end of the datasegment.

Lines generated from point data 22 should be expressed in a CAD-styleformat and should be easy to manipulate manually. They should ignorelocal data noise, such as is produced by trim moldings around doors 38and windows 40.

After obtaining the CAD-style representation of candidate wall surfaces,it will be necessary to perform some basic manipulation of the walldata, such as snapping corners to perpendicular, joining sections ofwall occluded by furniture or wall hangings, and removing lines notassociated with architectural features 54.

The scan data may contain information from wall hangings, furniture, orother obstructions which may not provide useful information indescribing the room model. It should be possible to tag these linesegments 32 as belonging to objects other than room walls. This willretain the line informations, but remove the lines from consideration ascandidate wall surfaces.

The line segment identification and line-fitting techniques describedabove coupled with the nature of the scanner 14 data generate linesegments 32 whose end-points may not necessarily connect with adjoiningline segments 32. It will be necessary to identify, either manually orvia an algorithm, those line segments 32 whose ends should be joined inthe final floor plan model.

A preference menu 48 will determine if lines should be perpendicular.Most houses, especially older houses, will not measure square, howeverthey should be represented on a floor plan as square. For applicationsin which the floor plan is to be used for renovation work, thispreference will be turned off to allow actual as built measurements tobe made.

Whenever possible, it will be beneficial to automatically recognizedoors 38. Data scans should be performed with the doors 38 partiallyopen. The scan should generate enough data across the door 38 todetermine hinge point and direction of swing.

Heuristics may be necessary to resolve door 38 sizing issues. It isprobable that there will be discrepancies in door 38 sizes between scansdepending upon what was visible to the scanner 14. Doors 38 are not madein odd sizes however, and should probably be snapped to the closeststandard size and the wall opening adjusted accordingly.

Windows 40 will be common to most rooms, therefore, an automatic methodof locating and placing window 40 symbology is required. Windows 40 willmost likely generate very scattered and noisy data as the laser reflectsfrom or penetrates through the glass surface. These areas of non-regulardata may be easy to detect, however the exact edges of the windows 40may be more difficult to determine. It may be sufficient to snap thedata to the nearest standard size, however there are many homescontaining custom window 40 sizes.

When a suspected window 40 opening is detected, a window 40 symbolshould be drawn anchored at the end points of the included wall.

Occasionally curved wall segments will be present. These must berepresented in some way which is compatible with CAD formats. A splineof some sort is likely. Data points can be sampled to reduce the numberof points in the spline fit.

Support columns will be common in basements and modern construction.These will be round columns but will scan only as arcs due to lines ofsight. For these types of items, the theoretical center of the column isdetermined, and then a circle of the correct radius is inserted at thecenter.

A room plan can be completed in an average time of two minutes includingscan time.

The following steps describe the process to create a floor plan.

Set Up

-   -   1. Enter the structure or building. Tripod is in one hand,        scanner 14 head is in the other.    -   2. Assemble equipment. Attach scanner 14 head to tripod using        quick attach mount and turn on system. It will be important to        reduce the amount of boot time.    -   3. Secure window 40 coverings. While scanner 14 is booting, use        tie straps to pull window 40 coverings away from window 40        edges. It is necessary to see all window 40 edges to generate        good mapping data. Tie straps will be webbing with velcro        closures.    -   4. Identify building. Either type in house address, or select        building address from a jobs menu 48. Either a job identifier or        the house address will be used to track the house throughout the        process. All resultant files should contain both sets of        identifiers.    -   5. Set scanner 14 in center (roughly) of room at a height just        above head height. Important architectural features 54 should be        in view, especially windows 40 and doors 38.    -   6. Select room type from menu 48. If non-standard room, then        enter a room type. Typical standard types will be living,        family, kitchen, master bedroom, etc.    -   7. Activate scan using display screen 30. Wait for scanner 14 to        complete scan before doing anything else or moving the tripod.    -   8. Point data 22 from scan will appear on screen 30.    -   9. Automatic data reduction algorithms will complete as much of        the floor plan as possible.    -   10. Remove obvious errors using line editing tools.    -   11. Add doors 38 using door 38 menu 48. The automatic algorithms        will try to fill in as many doors 38 as it can. When possible        the scan should be taken with doors 38 half open. Doors 38 that        cannot be automatically placed will be placed using the door 38        placement tools. The tool will place a standard door 38        symbology between two designated points with the order of the        points designating the hinge location. A third point will        specify door 38 swing. Eventually types of doors 38 will be        included for eventual 3D outputs. The eventual 3D extensions        would have a menu 48 of standard door 38 types to choose from.        The current software must handle standard doors 38, bi-folds,        sliders, and a few others.    -   12. Add windows 40 using window 40 menu 48. The automatic        algorithms will try to fill in as many windows 40 as it can.        Windows 40 that cannot be automatically placed will be placed        using the window 40 placement tools. The tool will place        standard window 40 symbology between two designated points.        Eventually types of windows 40 will be included for eventual 3D        outputs. The eventual 3D extensions would have a menu 48 of        standard window 40 types to choose from. The current software        must handle standard windows 40 only.    -   13. Add other features 54 not shown in scan. This includes        fireplaces, toilets, tubs, sinks, appliances, etc. These        features 54 should be added through use of a symbology menu 48.        Some of the symbols 50 will be fixed size, some can be        stretched. All must be to scale.    -   14. Add floor covering type from menu 48. Might include        hardwood, wall-to-wall carpet, vinyl, ceramic, or others.    -   15. Move scanning system to next room. Move as a single unit.    -   16. Repeat room measurement process.    -   17. Connect rooms on screen 30 map. This should be done mostly        by computer 26. Select a common wall 56 and let the software do        the rest.    -   18. Repeat process for all of the rest of the rooms on the        floor. Hallways should be modeled as well. Stairs must be        positioned using stair menu 48 feature 54. Closets should be        modeled using either scanner 14 or hand measurements. Closets        should be considered a separate room and labeled as a closet so        that they are not labeled the same as a major room.    -   19. Specify exterior walls. Exterior walls will have a thicker        line type than interior walls.    -   20. Check floor plan for completeness and consistency.    -   21. Move to next floor and repeat process. Be sure that stairs        align correctly between floors. This should be an automatic        feature 54 if possible. Make sure that common walls 56 are        matched up.    -   22. Finish all floors of the building.    -   23. Perform any digital photography requested on job order.    -   24. Enter building descriptors from lists if requested.    -   25. Make sure all data is secure.    -   26. Shut down scanner 14 and disassemble.    -   27. Leave for next building.    -   28. Elapsed time should be no more than 30 minutes.    -   29. Build in time tracking functions to check performance.    -   30. At end of day, dump data sets through modem connection to        main office.    -   31. At main office the data sets will be catalogued and spot        checked for accuracy. Time stamps will be profiled for        performance. Performance records will be maintained for each        service technician to track performance and award        bonuses/penalties.

Although the invention has been described in detail in the foregoingembodiments for the purpose of illustration, it is to be understood thatsuch detail is solely for that purpose and that variations can be madetherein by those skilled in the art without departing from the spiritand scope of the invention except as it may be described by thefollowing claims.

1. A method for establishing the layout of a building comprising thesteps of: placing a scanner on a structure in a first room of thebuilding; scanning the first room by the scanner to obtain first roomdata; waiting for the scanner to complete the scanning of the firstroom; forming a representation of the layout of the first room with acomputer from the first room data; displaying the representation of thelayout of the first room on a screen; placing a window representation,either with the software of the computer or by a user directing thecomputer, using a predetermined symbol in the representation of thelayout of the first room on the screen where the window is identified inthe first room on the screen with the software of the computer; andcompleting the layout of the building.
 2. A method as described in claim1 wherein the scanning step includes the step of emitting a laser beamrepeatedly around the first room and obtaining point data fromreflections of the laser beam from the first room to obtain first roomdata with the computer.
 3. A method as described in claim 2 includingafter the first room scanning step, there is the step of identifying anentrance to the first room with the computer from the first room data,and the forming step includes the step of forming a representation ofthe layout of the first room with the entrance of the first room fromthe first room data.
 4. A method as described in claim 3 including afterthe first room scanning step, there are the steps of: removing thescanner from the first room; placing the scanner in a second roomadjacent the first room; scanning the second room with the scanner toobtain second room data; combining the second room data with the firstroom data with the computer; and forming a representation of a layout ofthe first room with the entrance and the second room from the first roomdata and the second room data.
 5. A method as described in claim 4including after the first room scanning step, there is the step ofidentifying dimensions of the first room associated with length andwidth with the computer.
 6. A method as described in claim 5 wherein theidentifying the entrance step includes the step of identifying a door inthe first room.
 7. A method as described in claim 6 wherein theidentifying the door step includes the step of adding a representationof the door to the first room data.
 8. A method as described in claim 6including after the identifying the door step, there is the step ofidentifying a window in the first room.
 9. A method as described inclaim 8 wherein the identifying the window step includes the step ofadding a representation of the window to the first room data.
 10. Amethod as described in claim 9 including after the identifying the doorstep, there is the step of adding a representation of a feature to thefirst room data.
 11. A method as described in claim 10 wherein the stepof adding a feature includes the step of adding a representation of afireplace, appliance, toilet, tub, sink, cabinet or shower to the firstroom data.
 12. A method as described in claim 11 wherein after the stepof adding a representation of a feature, there is the step of adding arepresentation of a floor covering to the first room data.
 13. A methodas described in claim 12 wherein the step of adding a representation offloor covering includes the step of adding a representation of hardwood,wall-to-wall carpet, vinyl or ceramic to the first room data.
 14. Amethod as described in claim 13 wherein the step of combining includesthe step of aligning a representation of a common wall of the first roomdata and the second room data.
 15. A method as described in claim 14wherein the forming step includes the step of forming the representationof the layout of the first room with the door, window, feature and floorcovering from the first room data and the second room from the secondroom data.
 16. A method as described in claim 15 including after theemitting step, there is the step of connecting the point data to formline segments that represent the layout of the first room with thecomputer.
 17. A method as described in claim 16 including after theconnecting step, there is the step of eliminating erroneous linesegments with the computer.
 18. A method as described in claim 17wherein the identifying a door step includes the step of placing arepresentation of a door between associated door line segments that area predetermined distance apart with the computer.
 19. A method asdescribed in claim 18 wherein the identifying a window step includes thestep of placing a representation of a window between associated windowline segments with the computer.
 20. A method as described in claim 19wherein the step of placing a representation of the door includes thestep of viewing the line segments on a screen and picking a symbol of adoor from a window menu on the screen and dragging the symbol of thedoor from the window menu to between the associated door line segments.21. An apparatus for establishing a layout of a first room comprising: ascanner for scanning under its own direction the first room of thebuilding to obtain first room data, the scanner having a scan head; astructure for holding the scanner; and a mechanism for forming arepresentation of the layout of the first room from the first room data,said forming mechanism connected to the scanner, the forming mechanismincludes a screen on which the representation of the layout of the firstroom is displayed, the forming mechanism includes a memory which storesthe first room data, said memory including a mechanism for identifying awindow in the room from the room data, a mechanism for placing a windowrepresentation using a predetermined symbol in the layout of the firstroom on the screen where the window is identified in the first room onthe screen, and a mechanism for permitting manual addition of the windowrepresentation where the window is identified in the first room by theidentifying mechanism.
 22. An apparatus as described in claim 21 whereinthe forming mechanism forms a representation of the layout with anentrance of the first room from the first room data.
 23. An apparatus asdescribed in claim 22 wherein the scanner includes a laser rangefinderwhich obtains point data for the first room data from the first room,said memory connected to said laser rangefinder.
 24. An apparatus asdescribed in claim 23 wherein the forming mechanism includes a computerconnected to the memory.
 25. An apparatus as described in claim 24wherein the memory has a mechanism for forming line segments from thepoint data of the first room data, said line segment forming mechanismconnected to the computer.
 26. An apparatus as described in claim 25wherein the forming mechanism includes the screen connected to thecomputer which shows the line segments which represent the layout of thefirst room.
 27. An apparatus as described in claim 26 wherein the memoryincludes a mechanism for identifying an entrance from the point data,said entrance identifying mechanism connected to the computer.
 28. Anapparatus as described in claim 27 wherein the entrance can be the dooror a window and wherein the entrance identifying mechanism can include amechanism for placing a representation of the door or window within theline segments as part of the first room data, said placing mechanismconnected to the memory.
 29. An apparatus as described in claim 28wherein the memory includes a mechanism for identifying dimensions ofthe first room from the first room data, said dimension identifyingmechanism connected to the computer.
 30. An apparatus as described inclaim 29 wherein the memory includes a mechanism for placing a featureinto the line segments of the first room data, said feature placingmechanism connected to the computer.
 31. An apparatus as described inclaim 30 wherein the memory includes a mechanism for displaying a menuhaving symbols of features, a door and a window on the screen, saidsymbols able to be chosen from the menu and placed in the line segmentson the screen of the first room data, said displaying mechanismconnected to the computer.
 32. An apparatus as described in claim 31wherein the memory includes a mechanism for editing the line segments ofthe first room data, said editing mechanism connected to the computer.